// 初始化地址的vuex
export default {
	// 开启命名空间
	// 开启命名空间
	namespaced: true,
	// 定义数据中心
	state: {
		// 从本地浏览器中拿数据
		address: JSON.parse(uni.getStorageSync('m_address') || '{}')
	},
	// 方法
	mutations: {
		// 更新收货地址
		updateAddress(state, address) {
			state.address = address;
			// 调用vuex当中的方法
			this.commit('m_address/saveAddress')
		},
		// 将用户的地址信息持久化的存储到本地
		saveAddress(state) {
			uni.setStorageSync('m_address', JSON.stringify(state.address));
		}
	},
	// 数据包装器
	getters: {
		// 将用户的地址进行一个包装
		addressAll(state) {
			// 如果返回的地址没有省份，则直接返回一个空
			if (!state.address.provinceName) return ''

			// 拼接 省，市，区，详细地址 的字符串并返回给用户
			return state.address.provinceName + state.address.cityName + state.address.countyName + state.address.detailInfo
		}
	}
}
